/**
 * 
 */
package cn.android.common.utils;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 时间工具
 * @author RenHui
 */
public class TimeUtils {
	
	public static final SimpleDateFormat DEFALUT_DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	public static final SimpleDateFormat DATE_FORMAT_DATE = new SimpleDateFormat("yyyy-MM-dd");

	// 私有构造函数
	private TimeUtils() {
		throw new AssertionError();
	}
	
	/**
	 * long time to string
	 * @param timeInMillis
	 * @param dataFormat
	 * @return
	 */
	public static String getTime(long timeInMillis, SimpleDateFormat dataFormat) {
		return dataFormat.format(new Date(timeInMillis));
	}
	
	/**
	 * long time to string , format {@link #DEFALUT_DATE_FORMAT}
	 * @param timeInMillis
	 * @return
	 */
	public static String getTime(long timeInMillis) {
		return getTime(timeInMillis, DEFALUT_DATE_FORMAT);
	}
	
	/**
	 * get current time in milliseconds
	 * @return
	 */
	public static long getCurrentTimeInLong() {
		return System.currentTimeMillis();
	}
	
	/**
	 * 获取当前时间（字符串类型）
	 * @return
	 */
	public static String getCurrentTimeInString() {
		return getTime(getCurrentTimeInLong());
	}
	
	/**
	 * 获取当前时间并转换成为指定格式的字符串
	 * @param dateFormat
	 * @return
	 */
	public static String getCurrentTimeInString(SimpleDateFormat dateFormat) {
		return getTime(getCurrentTimeInLong(), dateFormat);
	}
	
}
